stop marking deref_patterns as an incomplete feature#153053
stop marking deref_patterns as an incomplete feature#153053rust-bors[bot] merged 1 commit intorust-lang:mainfrom
deref_patterns as an incomplete feature#153053Conversation
|
Some changes occurred in src/tools/clippy cc @rust-lang/clippy |
|
r? @fee1-dead rustbot has assigned @fee1-dead. Use Why was this reviewer chosen?The reviewer was selected based on:
|
This comment has been minimized.
This comment has been minimized.
635d644 to
06b0bd2
Compare
|
This is indeed more or less current policy. This should get an RFC before being marked as incomplete. |
|
If we look at the diagnostic emitted by This paints me as a status that moreso reflects the state of the feature in the compiler rather than the language. Given that my memory of cc @Nadrieril who made that comment originally. @bors r+ rollup |
|
@bors r- The policy is here: https://lang-team.rust-lang.org/how_to/experiment.html :
I consider it important to keep the warning, because this feature may be replaced by something different depending on how the Field Projections work pans out. |
|
It's a known annoyance that we use the same "incomplete feature" lint to mark both features that aren't fully implemented and features that aren't yet approved by the lang team, but for now that's the lint we have. |
|
/shrug const traits doesn't have incomplete status either, and it also doesn't have an RFC. The wording on the diagnostic does not match what the lang team prescribes. Someone should do Something I suppose, and change the warnings for these kinds of features from the current wording to one that is like "this feature does not have an accepted RFC", with note "this feature could be majorly changed or outright removed" |
Arguably "this is a nightly feature" could be enough of a deterrent. I think the lint is a not-super-thorough attempt at signaling to users how risky it is to be making use of that feature in their code. And, well, for deref patterns I think we're in "not too risky" territory. I wouldn't remove the feature except to replace it with something similar; the overall ergonomics is completely something we want in the language in some form. So maybe it's fair to remove the lint... |
Am I the only one respecting that policy x) |
…ete, r=fee1-dead,Nadrieril stop marking `deref_patterns` as an incomplete feature This PR removes the `incomplete_feature` warning for `deref_patterns`. The reason given for this in the tracking issue (rust-lang#87121) was > Per policy, the `incomplete_feature` is supposed to stay on until the feature has an accepted RFC. We're slowly working on writing up that RFC so it'll take some more time unfortunately. > > I don't know of any compiler crashes it causes today. The feature should be pretty usable. However, I could not find any evidence of such a policy. The [lint documentation](https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#incomplete-features) for `incomplete_features` also only mentions features that are more likely to cause errors. There are also many other features without an RFC that are not considered incomplete, e.g. `macro_metavar_expr_concat`, `negative_impls` or `yeet_expr`. The feature does not cause any known ICEs either. The concrete motivation is to use this feature to replace `box_patterns` in the compiler and pave the way towards removing that legacy feature.
…ete, r=fee1-dead,Nadrieril stop marking `deref_patterns` as an incomplete feature This PR removes the `incomplete_feature` warning for `deref_patterns`. The reason given for this in the tracking issue (rust-lang#87121) was > Per policy, the `incomplete_feature` is supposed to stay on until the feature has an accepted RFC. We're slowly working on writing up that RFC so it'll take some more time unfortunately. > > I don't know of any compiler crashes it causes today. The feature should be pretty usable. However, I could not find any evidence of such a policy. The [lint documentation](https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#incomplete-features) for `incomplete_features` also only mentions features that are more likely to cause errors. There are also many other features without an RFC that are not considered incomplete, e.g. `macro_metavar_expr_concat`, `negative_impls` or `yeet_expr`. The feature does not cause any known ICEs either. The concrete motivation is to use this feature to replace `box_patterns` in the compiler and pave the way towards removing that legacy feature.
…ete, r=fee1-dead,Nadrieril stop marking `deref_patterns` as an incomplete feature This PR removes the `incomplete_feature` warning for `deref_patterns`. The reason given for this in the tracking issue (rust-lang#87121) was > Per policy, the `incomplete_feature` is supposed to stay on until the feature has an accepted RFC. We're slowly working on writing up that RFC so it'll take some more time unfortunately. > > I don't know of any compiler crashes it causes today. The feature should be pretty usable. However, I could not find any evidence of such a policy. The [lint documentation](https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#incomplete-features) for `incomplete_features` also only mentions features that are more likely to cause errors. There are also many other features without an RFC that are not considered incomplete, e.g. `macro_metavar_expr_concat`, `negative_impls` or `yeet_expr`. The feature does not cause any known ICEs either. The concrete motivation is to use this feature to replace `box_patterns` in the compiler and pave the way towards removing that legacy feature.
Rollup merge of #153053 - cyrgani:deref-patterns-not-imcomplete, r=fee1-dead,Nadrieril stop marking `deref_patterns` as an incomplete feature This PR removes the `incomplete_feature` warning for `deref_patterns`. The reason given for this in the tracking issue (#87121) was > Per policy, the `incomplete_feature` is supposed to stay on until the feature has an accepted RFC. We're slowly working on writing up that RFC so it'll take some more time unfortunately. > > I don't know of any compiler crashes it causes today. The feature should be pretty usable. However, I could not find any evidence of such a policy. The [lint documentation](https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html#incomplete-features) for `incomplete_features` also only mentions features that are more likely to cause errors. There are also many other features without an RFC that are not considered incomplete, e.g. `macro_metavar_expr_concat`, `negative_impls` or `yeet_expr`. The feature does not cause any known ICEs either. The concrete motivation is to use this feature to replace `box_patterns` in the compiler and pave the way towards removing that legacy feature.
…uwer Rollup of 4 pull requests Successful merges: - rust-lang/rust#147834 (Always make tuple elements a coercion site) - rust-lang/rust#150446 (miri/const eval: support `MaybeDangling`) - rust-lang/rust#153053 (stop marking `deref_patterns` as an incomplete feature) - rust-lang/rust#153398 (fix ICE in `const_c_variadic` when passing ZSTs)
This PR removes the
incomplete_featurewarning forderef_patterns. The reason given for this in the tracking issue (#87121) wasHowever, I could not find any evidence of such a policy. The lint documentation for
incomplete_featuresalso only mentions features that are more likely to cause errors.There are also many other features without an RFC that are not considered incomplete, e.g.
macro_metavar_expr_concat,negative_implsoryeet_expr.The feature does not cause any known ICEs either.
The concrete motivation is to use this feature to replace
box_patternsin the compiler and pave the way towards removing that legacy feature.